package com.cleaningcloud.erp.service;

import com.cleaningcloud.erp.domain.ErpOutbound;
import com.cleaningcloud.erp.domain.dto.ErpOutboundDto;
import com.cleaningcloud.erp.domain.vo.ErpOutboundVo;

import java.util.List;

/**
 * 销售出库Service接口
 *
 * @author cleaningcloud
 * @date 2024-10-02
 */
public interface IErpOutboundService {
    /**
     * 查询销售出库
     *
     * @param outboundId 销售出库主键
     * @return 销售出库
     */
    ErpOutboundVo selectErpOutboundByOutboundId(Long outboundId);

    /**
     * 查询销售出库列表
     *
     * @param erpOutbound 销售出库
     * @return 销售出库集合
     */
    List<ErpOutboundVo> selectErpOutboundList(ErpOutbound erpOutbound);

    /**
     * 新增销售出库
     *
     * @param erpOutbound 销售出库
     * @return 结果
     */
    int insertErpOutbound(ErpOutbound erpOutbound);

    /**
     * 修改销售出库
     *
     * @param erpOutbound 销售出库
     * @return 结果
     */
    int updateErpOutbound(ErpOutboundDto erpOutbound);

    /**
     * 批量删除销售出库
     *
     * @param outboundIds 需要删除的销售出库主键集合
     * @return 结果
     */
    int deleteErpOutboundByOutboundIds(Long[] outboundIds);

    /**
     * 删除销售出库信息
     *
     * @param outboundId 销售出库主键
     * @return 结果
     */
    int deleteErpOutboundByOutboundId(Long outboundId);


}
